Information apparatus having automatic web reading function

ABSTRACT

An information apparatus which has access means by which a document on the Internet is accessed and automatic Web tracing means which automatically trace link destinations successively according to a predetermined rule and parameters based on the link information which is set in the accessed document. The predetermined rule is either a depth-first search or a width-first search. The predetermined parameters include at least a link depth limit to be used when the link destinations are traced downward in the hierarchy, an interval of time required for a transit from one document to another, and an automatic Web tracing time-out time. The rule and parameters may be specified by a user. Automatic Web tracing may be performed either on-line or off-line. Thus, time-varying information can passively be received as if it were television information, minimizing operation steps necessary for a user to perform the automatic Web browsing of the Internet.

TECHNICAL FIELD

The present invention relates to the Internet, and more particularly toan apparatus having an Internet automatic Web browsing function.

BACKGROUND ART

As personal computers become popular recently, the Internet has becomewidely used. The Internet is a gigantic aggregate of interconnectedcomputer networks. Its main functions include electronic mail, networknews (electronic bulletin board or electronic conference), file transfer(FTP: file transfer protocol), and World Wide Web (WWW). In particular,WWW, an aggregate of hypertext documents coded in the language calledHTML, described later, combines various types of informationdispersively existing on the Internet and makes them accessible.

As a prerequisite for understanding the present invention, the followingdescribes the structure and operation of the Internet system for the WWWand the structure of a hypertext document.

As shown in FIG. 24, the distribution of hypertext documents isperformed by computers 243 and 244, called WWW servers, on the Internet.A user can use a browser program, called a WWW browser (also called aWeb browser), on a client computer (hereafter simply called a client) toaccess documents on the Internet. Normally, the client computer 241 isconnected to the Internet via a service organization called a serviceprovider which offers a dedicated communication line of its own. Thatis, the client. computer 241 dials up the host computer of the serviceprovider via a public line to make access to the Internet. This makes itpossible for the user to get information (text, image, sound, and so on)from around the world while staying at home. This practice is callednetwork surfing because it is like surfing through information waves.

A unit of information that is accessed is a file on the WWW server,called a page. Setting up a link, which will be described later, allowsthe user to jump from one page to another for sequential browsing. Thelength of a page is variable and may change according to the pagecreator.

A particular page (home page) on the WWW is assigned an address called aURL (Uniform Resource Locator) which is a unique address on theInternet.

A URL is composed of a protocol name, server name, and an item pathname, as shown below.

http://www.abc.or.jp/def/ghi.html

The protocol name indicates the method by which the computer interpretsinformation. Because the WWW server and the Web browser transferinformation by the method called HTTP (Hyper Text Transfer Protocol),the protocol name, the first part of the above URL, is “http:”. There isalso a protocol, called ftp, for use in file transfer. The“www.abc.or.jp” represents a server name. The “www” indicates that theserver is a WWW server. The “abc” in “abc.or.jp” indicates anorganization name, “or” indicates an organization type (in this example,an organization/individual), and “jp” indicates a code representing acountry (in this example, Japan). The item path name “def/ghi.html”after the server name indicates the location of an item on the server.The path name usually indicates the name of a file constituting a page.The “def” in “def/ghi.html” is a directory name, “ghi” is a file name,and “html” is an extension indicating that the file is an html file.

Next, the structure of an HTML file (HTML document) will be described.

As described above, HTML is an abbreviation for Hyper Text MarkupLanguage, and a WWW document is usually written in this language. Adocument written in this language is called an HTML document, and itsfile is called an HTML file (or HTML text).

FIG. 20 shows the basic structure of an HTML document. An HTML document,a text file in essence, contains codes, called tags enclosed by symbols“<” and “>”, in a page. Normally, a specified range is bounded by a pairof the start tag and the end tag. The end tag is distinguished from thestart tag by “/”. Note that there is a tag which is used alone, such as<P> indicating the start of a new paragraph. The tag allows characterdesign information and layout information, as well as link information,to be specified. The browser interprets the tag, displays on the screenthe HTML document in a format intended by the creator, or controls linkoperations.

The detailed description of.HTML is omitted here because it is wellknown. As shown in FIG. 20(a), the basic structure of an HTML documentcontains various types of tags in the text document. When the HTMLdocument is interpreted by the browser and displayed on the screen, thetags are not displayed, as in FIG. 20(b), with only the specifiedcontrol reflected on the display. The function which passes control toanother page, associated with a character string in the HTML document,when the user executes an operation (for example, click) on thecharacter string, is called a link. In this specification, such acharacter string part in the HTML document is also called a link for thesake of convenience. A link 201 in a page of the HTML document“aaa.html”, shown in FIG. 20(a), is described as:

<A HREF=“bbb.html”>BBB</A>

The tags used for setting up a link are called anchor tags (<A . . . >.. . </A>), and the part enclosed by the anchor tags is called an anchorpoint or a hot point. The “HREF=” in <A HREF=“bbb.html”> in the starttag of the anchor tags indicates access information on the linkdestination (in this example, a file name). On the browser screen, thecharacter string “BBB” is highlighted as in the displayed characterstring 203 shown in FIG. 20(b). This highlight display is realized bydisplaying the character string in a color different from othercharacter strings or by underlining. This allows the user to identifythat, if the user points this character string, he or she will be ableto jump to some other page.

A link 202 indicates a link to an in-line image. In this case, the imagefile named “ggg.gif” is displayed on the screen as an image 204. Whenthe user points the image 204, the content of the link destination“bbb.html” is read and displayed. An in-line image is an image embeddedin a page of the HTML document page for display.

There are several patterns used in a link for link destination accessinformation.

As shown in FIG. 21, when a link is set up (or created) for another page(or an HTML file) in the same server (host), the file name (sometimes,including a directory) is link destination information. FIG. 21(a) showsa link source HTML file and a link destination HTML file. FIG. 21(b)shows the content displayed on the browser display screens associatedwith the respective files. In this example, when the user points theanchor point character string “BBB”, the HTML file “bbb.html” which is alink destination representing another page is requested and its contentis displayed.

As shown in FIG. 22, a link may be set up to some other location in thesame page. In such a case, the item name of the location is used as linkdestination information. As shown in FIG. 22(a), the link sourcedescription <A HREF=“#aaa>AAA</A>” indicates the position of the linkdestination and, on the other hand, the link destination description <ANAME=“aaa”>AAA</A> indicates that the item name “aaa” is linked with thesource. As shown in FIG. 22(b), when the user points the highlightedcharacter string “AAA” on the browser screen, display control is passedto the position of the item “AAA” which is in a subsequent locationwithin the same page. This is useful in a long page to display a list ofitems each having a link to the corresponding item at a subsequentlocation.

FIG. 23 indicates a link to a location in a separate page in the sameserver. In this case, the combination of the file name of the separatepage and an item name in the document is used as the link destinationaccess information. In this example, control jumps to the item “ppp” ina separate file “bbb.html” in the same server. FIG. 23(a) shows the linksource and link destination HTML files, and FIG. 23(b) shows thecorresponding browser screens.

Referring again to FIG. 24, information transfer between a client andthe WWW server when accessing WWW will be described briefly.

The user connects the client computer 241 to the Internet and thenstarts the Web browser. Then, the Web browser on the client computer 241requests a WWW server 243 of a previously-specified URL (this may bechanged by the user) to send the content of the page identified by theURL (REQ1). Upon receiving this request, the WWW server 243 returns theHTML text of the page to the client computer 241 (RES1). When thebrowser receives the text, it analyzes the content and displays it onthe screen of the client computer 241. When this page contains anin-line image (and others such as a sound), the browser requests theserver 243 for that information (REQ2). In response to this, the WWWserver 243 returns an image file (RES2). Upon receiving this file, thebrowser displays the image at a location specified in the page. When theuser points a link in the page displayed on the screen, for example,when the link points to another page on the same WWW server 243, thebrowser requests the WWW server 243 to send the HTML text of the page(REQ3). In response, the WWW server 243 returns the text (RES3). Inaddition, when the link destination of the link in the page specified bythe user is on a separate WWw server 244, the browser requests theserver 244 to send the page information of the link destination (REQ4).In response, the server 244 returns the corresponding page information(RES4). The browser displays the received information on the screen.

A WWW access is made according to such a procedure. The user is able totype an arbitrary URL from the keyboard, instead of specifying a link,to access the page.

Although personal computers become used at home, only those havingknowledge on computers or experience in operation to some extent canconnect computers to the Internet and enjoy network surfing. Not allmembers of a family can enjoy network surfing with ease.

These days, to cope with this situation, a TV set with a built-inInternet connection function or an Internet connection apparatus whichcan be connected to a TV set externally is made available. These TV setsor apparatuses (collectively called information apparatus in thisspecification), intended for users with no computer knowledge, usuallydo not have a unit, such as a keyboard, for entering a user instructioninto the information apparatus; instead, they have special remotecontrol devices for operation. The browser screen, its menu display, andso on are also designed for that purpose. However, the television isdesigned to give information continuously without user interactions,while the Internet browser requires user interactions to keep onoperation, i.e., requests the user to watch the screen and to giveoperation instructions. Therefore, this operation could sometimes becumbersome to passive users who are familiar with the television.

In view of the foregoing, it is an object of the present invention toprovide an information apparatus with an Internet automatic Web browsingfunction which allows the user to receive information passively, as witha television, while keeping the operation required when browsingInternet Webs to a minimum.

DISCLOSURE OF INVENTION

An information apparatus with an automatic Web browsing functionaccording to the present invention, comprises access means for accessingdocuments on the Internet; storage means for storing data of theaccessed documents; and automatic Web tracing means for sequentially andautomatically tracing link destinations according to a predeterminedrule and parameters based on link information defined in the documentsstored in the storage means.

This allows even a user with no computer knowledge or operationexperience can automatically browse the Web on the Internet continuouslyin much the same manner the user watches the television withoutcumbersome operations. Of course, if the user finds interestinginformation during automatic Web browsing, he or she may suspend or stopautomatic browsing to view the information carefully. Today, sometelevisions offer multiple-divided television subscreens (for example,divided into left and right subscreens) to display separate channelpictures in the separate areas. One of the areas may be used for anInternet screen.

It should be noted that a link-destination document and a link-sourcedocument may belong to separate pages in the same Web server, to thesame page, or to separate Web servers.

The predetermined rule may relate to either a depth-first search or awidth-first search. The depth-first search is suitable for firstsequentially tracing the links associated with interested information.On the other hand, the width-first search is suitable for first graspingall the link destinations in the current page and then viewing thecontents of further destinations linked with each link destination.

The parameters may be composed of at least the link depth limit to beused when the link destinations are traced downward in the hierarchy andan interval of time required for a transit from one document to another.The link depth limit, if appropriately set, prevents control from goingtoo far from the start point. The interval of time should preferably beset to a length of time during which the outline of a displayed page (orpart of a page) may be identified.

The automatic Web tracing means may comprise a history table in which apage access information history is stored each time control moves from alink source to a link destination and a read-page table in whichinformation indicating, for each link destination of each link in apage, whether the link destination was visited or not, wherein thehistory table is referenced when control returns from one of the linkdestinations to the link source during automatic Web browsing and theread-page table is referenced to check for unread links.

The parameters may further include an automatic Web browsing time-outtime (limit time). The maximum automatic Web tracing time may be set byspecifying the time-out time. The information apparatus may furthercomprise specifying means for allowing a user to specify the rule andparameters. This enables the user to select the rule and parameters heor she likes.

Automatic Web tracing is usually performed while the user is connectedto the Internet (that is, on-line), but it may also be done when theuser is not connected to the Internet (off-line). In that case, theinformation apparatus further comprises non-volatile storage means forstoring the documents obtained from the Internet, wherein the automaticWeb tracing means perform automatic Web tracing with respect to thedocuments stored in the non-volatile storage means when the informationapparatus is not connected to the Internet.

Because connecting to the Internet via a public line requires telephonecharges, storing required documents in the non-volatile storage means inadvance and performing automatic Web tracing (in off-line mode) withrespect to the stored documents can reduce the cost. That is, off-linebrowsing eliminates the need for displaying documents on the screen atcommunication time and does not need to consider user's browse time,thus reducing the communication time. The information apparatusaccording to the present invention is not limited to the connection to apublic line but the connection to a leased line may also be possible.

In this specification, the public line includes an analog telephoneline, a digital line such as an ISDN line, and a CATV line.

It is desirable that the information apparatus further comprise inquirymeans for asking a user if a connection is to be made automatically tothe Internet when the document at the next link destination is notstored in the non-volatile storage means during off-line automatic Webtracing. This prevents the line from being connected without the userbeing aware of the connection.

The documents must be stored in the non-volatile storage means for usein off-line automatic Web tracing. To do so, the information apparatusmay comprise automatic downloading means for automatically acquiring notonly the specified document on the Internet but also linked documentsthrough the on-line automatic Web tracing function into the non-volatilestorage means.

The automatic Web tracing function according to the present invention isimplemented by software. The computer program comprises the functions ofaccessing documents on the Internet; and sequentially and automaticallytracing link destinations according to a predetermined rule andparameters based on link information defined in the accessed documents.

Therefore, the present invention includes in its scope a recordingmedium which stores the program therein. This program may function aswhat we call a plug-in of an existing browser. The recording medium maybe a ROM that may be mounted on a board in the apparatus, a floppy diskthat is portable and nonvolatile recording medium, an MD (mini disk), aZip medium, a CD (compact disk) ROM, and a fixed secondary storage unitsuch as a hard disk.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram showing links among the hierarchical structure ofpages that may be browsed by an Internet Web browser;

FIG. 2 is a diagram showing depth-first-search auto-navigation used inan embodiment of the present invention;

FIG. 3 is a diagram showing width-first-search auto-navigation used inthe embodiment of the present invention;

FIG. 4 is a block diagram showing an example of the hardwareconfiguration of an information apparatus to which the present inventionis applied;

FIG. 5 is a diagram showing an example of an Internet menu displayed onthe television screen of the information apparatus according to thepresent invention;

FIG. 6 is a diagram showing an auto-navigation parameter setup screendisplayed on the television screen;

FIG. 7 is a flowchart showing an example of auto-navigation parametersetup of the information apparatus according to the present invention;

FIG. 8 is a flowchart showing an example of auto-navigation processingof the information apparatus according to the present invention;

FIG. 9 is a flowchart showing an example of width-first searchprocessing that is combined with the processing in FIG. 8;

FIG. 10 is a flowchart showing an example of auto-navigation suspendprocessing;

FIG. 11 is a flowchart showing an example of auto-navigation skipprocessing;

FIG. 12 is a diagram showing an example of the configuration of ahistory table used during auto-navigation processing;

FIG. 13 is a diagram showing an example of the configuration of aread-page table used during auto-navigation processing;

FIG. 14 is a diagram showing an example of another configuration of thehistory table used during auto-navigation processing;

FIG. 15 is a diagram showing an example of the configuration of alink-source table used with the history table shown in FIG. 14;

FIG. 16 is a flowchart showing anther example of the return processingof auto-navigation;

FIGS. 17(A) and (b) comprise a diagram showing a second embodiment ofthe present invention;

FIG. 18 is a flowchart showing the confirmation processing ofauto-navigation of the second embodiment of the present invention;

FIG. 19 is a flowchart showing an example of automatic downloading thatis required for auto-navigation used in the second embodiment of thepresent invention;

FIGS. 20(a) and (b) comprise a diagram showing an HTML document;

FIGS. 21(a) and (b) comprise a diagram showing the links used in theHTML document;

FIGS. 22(a) and (b) comprise a diagram showing the links used in theHTML document;

FIGS. 23(a) and (b) comprise a diagram showing the links used in theHTML document; and

FIG. 24 is a diagram showing the information transfer between a clientand a WWW server on the Internet.

BEST MODE FOR CARRYING OUT THE INVENTION

An information apparatus with the automatic Web browsing functionaccording to the present invention will be described in detail.

FIG. 4 shows an example of hardware configuration of an apparatus forimplementing the embodiment. This hardware may be built in thetelevision set or externally connected.

In the configuration shown in FIG. 4, a central processing unit (CPU)401 is connected to a bus 400 and, via the bus 400, performs the overallcontrol of the information apparatus shown in FIG. 4. A mask ROM 405contains computer programs, such as a browser, to be executed by the CPU401. A font ROM 406 contains font data to be used on the televisionscreen of the browser and so on. A flash memory 407, a re-writablenon-volatile memory, contains data, such as URLs or electronic mailaddresses, a user wants to store. The flash memory 407 may also containupgradable programs. Instead of, or in addition to, the flash memory, asecondary storage unit, non-volatile storage means such as an MD (minidisk) or hard disk, may also be used. A RAM 408 has a work area requiredby the CPU 401 to execute programs or an area where various parametersare stored. The RAM 408, with a large amount of storage, may also beused as a cache for temporarily storing page information (filescontaining HTML text, image, sound, and so on) received from thenetwork. A cache with the use of above-described secondary storage unitmay also be used.

The information apparatus is connected to a public line via the lineterminal (LINE). The line terminal is connected to the bus 400 via amodem 418 and a serial controller 417. When using an ISDN line, a DSU(Data Service Unit) and a TA (Terminal Adapter) are used.

When displaying page information received by this information apparatusover the public line on the television screen, the information is firstdrawn in a display memory (VRAM) 411 via a display controller 410. Thecontent of the display memory 411 is output from a video output terminal(VOUT) via a digital-analog (D/A) converter 412 and is entered into thevideo input terminal (not shown) of the television.

Switching between the television screen and the Internet screen is doneby a controller (not shown in the figure) on the television which isconnected to the VOUT terminal.

Page information sometimes contains audio information. To process audioinformation, an audio controller 414 and a digital-analog (D/A)converter 415 are provided. Audio signals are output from the audiooutput terminal AOUT for input into the audio input terminal (not shownin the figure) on the television. Alternatively, when a loudspeaker isprovided on an Internet board, audio information is output from theloudspeaker.

The Internet board is a substrate on which all or some of the componentsshown in FIG. 4, except a remote controller 402, are provided.

A user uses the remote controller 402 to control this informationapparatus. The signal (for example, an infrared light signal) generatedby the remote controller 402 is received by a receiver 403 and isinterpreted by the CPU 401. The remote controller 402 may also be usedfor normal television operation. In that case, the television operationsignal is sent to the CPU 401 via a TV controller 404.

To issue an Internet connection instruction from the informationapparatus shown in FIG. 4, the user must, for example, press a specialbutton on the remote controller 402 provided for that purpose. Pressingthe button causes the CPU 401 to start the Internet browsing softwareprogram, called a Web browser, and to make a dial-up connection to theInternet connection company called a service provider. Then, the menuscreen containing various menu items is displayed on the televisionscreen.

FIG. 5 shows an example of an Internet menu displayed first after theInternet connection is made. This menu screen 500 contains various menuitems such as weather forecasting, news, sports, search, etc. Thisscreen information may be stored in the memory (for example, mask ROM405) in the information apparatus. However, considering a potential needfor updating the content, it is desirable that the menu screeninformation be sent from the provider immediately after the Internetconnection is made. The user can move a cursor 503, as he wishes, on thescreen with the use of the remote controller 402. With the cursor 503 ona desired menu item, the user performs a selection operation (forexample, press the selection button) to select the menu item. Themovement operation of the cursor 503 is performed, for example, byoperating the arrow keys, indicating the up, down, right, and leftdirections, provided on the remote controller 402. Instead of using thecursor 503, one item may be highlighted at a time so that the user canmove the highlighting from one item to another with the use of the arrowkey to select one item while it is highlighted.

Each menu item on the menu screen 500 is associated with a link asdescribed above and, according to the selected menu item, thelink-destination page of the link is read. After that, by pointing linkson the screen, the user can browse new pages, one at a time.

The present invention provides a function allowing the links to betraced automatically. In this specification, this function is called anauto-navigation function (automatic Web tracing function). Theauto-navigation function may be started, for example, by pressing thespecial button on the remote controller 402 or a button on the screen.

FIG. 6 shows an example of the setup screen for various parameters foruse with the auto-navigation function. This setup screen 600 may bedisplayed in response to a user instruction, for example, through aspecial button on the remote controller 402 or a menu item on the menuscreen for that purpose. In this example, the user specifies anavigation direction 601, a link depth 603, a time interval 605, atime-out time 607, and a confirmation 609. The confirmation 609, used inthe second embodiment which will be described later, is mentioned herefor convenience.

The navigation direction 601 specifies, when there are a plurality oflinks in a page, whether the first link in each page is to besequentially traced first or all the link destinations of the links inone page are to be traced first. The former is called a depth-firstsearch, while the latter is called a width-first search. In the examplein the figure, the depth-first search is selected.

The link depth 603 is used to specify the maximum number of times thelinks are to be traced sequentially into lower hierarchies. In theexample in the figure, a depth value “5” is specified. The depth is “1”when control is passed to the link destination (sometimes in the samepage) of a particular link (anchor point) in the page displayed when theauto-navigation function is started. The depth of “5” indicates thatsuch control transfer is repeated four more times.

The time interval 605 is used to specify the period of time (in seconds)from the moment one page is displayed to the time the display isswitched to the next page. The illustrated example shows “3 seconds”being specified. If the time expires before one screenful of page isdisplayed, the operation ends even if the display operation is inprogress and the display of the next page is started. An appropriatevalue for the time interval 605 may be changed according to thecommunication speed (bps) or user preferences.

The time-out time 607 is used to specify the auto-navigation durationtime (in minutes). In the illustrated example, “10 minutes” isspecified. When the time expires, auto-navigation ends.

The confirmation 609 is used to specify whether or not the dialog box(confirmation panel) is to be displayed asking the user whether toconnect the line when information needs to be read, over the line,during off-line auto-navigation which will be described later. In theexample in the figure, “No” is specified.

After specifying these items, the user presses the “Complete” button(button on the screen) 611 to store the specified information. In theconfiguration shown in FIG. 4, this specified information is stored, forexample, in the flash memory 407 to retain the same specifiedinformation even after the power is turned off. To cancel the specifiedinformation on the setup screen 600 during modification, the userpresses the “Cancel” button 613. Pressing this button retains theprevious setup information.

For these setup items, the initial setup values (default values), whichwill be specified automatically when the user does not specify thevalues, may be defined.

FIG. 1 shows hierarchically the relation between a home page and pagesof link destinations of the links in the home page. Here, the “homepage” refers to an HTML document created by individuals, organizations,enterprises and so on, and added to the WWW server. Sometimes, the firstpage of a document is also called a home page. A “page”, usuallycorresponding to one data file, is a unit to be displayed at a time onthe browser screen (including part of image to be viewed by scroll ifthe image does not fit in the screen range). In FIG. 1, page A has links1, 2, and 3 pointing to pages B, E, and H, respectively (or specificlocations within the page). Also, page B has links pointing to pages Cand D. Similarly, page E has links pointing to pages F and G. Page H hasno link to any page. Pages C, D, F, and G each have one or more links.As described above, a link in one page may have a link destination atanother location within the same page. Therefore, two or more pagesshown in FIG. 1 may belong to the same page. The “LV” shown at the topof FIG. 1 indicates the link depth (also called a link level in thisspecification).

With the above-described hierarchical relation of the page as anexample, the following explains an example of auto-navigation.

FIG. 2 shows the page transition during automatic Web page tracing whenthe “depth-first search” is selected. In this example, the “link depth”is assumed to be “2” for the sake of description. In practice, the depthmay be larger. Under this condition, the links are traced sequentiallyfrom page A to pages B and C which are hierarchically lower levels.Because the link level reaches the maximum of “2”, control returns topage B which is the parent page (link-source page) of page C. Whencontrol returns to a previously-traced page, the pages containing linksnot yet traced are displayed so that such links may be viewed. In thisstage, because page B has another unread link (link 2) that has not yetbeen traced, control goes to the link destination which is page D. Whencontrol goes to page D, control returns to page B again because of thelink depth limitation. Then, because there is no further branch, controlreturns to page A which is the parent page. Similarly, after tracingpages E, F, E, G, and E, control return to A, the first page, and thengoes to page H. Because page H has no link, control returns to page A.The display time of each page is determined by the specified “timeinterval”. Auto-navigation is performed in this manner. If the “time-outtime” expires during the operation, auto-navigation ends at that moment.As will be described later, auto-navigation may be suspended, restarted,stopped, or skipped.

FIG. 3 shows the page transition when the “width-first search” isselected. In this example, the “link depth” is also assumed to be “2”.In the width-first search, when a page (page A) where auto-navigationstarts includes a plurality of links, the link destinations (linkdestinations at link level 1) of the plurality of links are all tracedfirst and then control goes to the link destinations (at link level 2 orlower) of each link. Therefore, control goes from page A to page B andreturns to page A, then goes to page E and returns to page A, and thengoes to page H and returns to page A. Control always returns to theparent page A after control goes to a link destination because, forexample, in page B the URL of page E, which is at the same hierarchicallevel, is unknown. Control also returns to the parent to check thecontent of the next link destination. Next, control goes to link level2. That is, control starts from page A, and proceeds through pages B, C,B, D, B, A, E, F, E, G, E, A, H, and A, in this order.

FIG. 7 shows a flowchart of processing for setting up auto-navigationparameters. As described above, this processing is started by the userpressing a special button on the remote controller 402 or selecting amenu item on the menu screen. First, a setup screen 600 shown in FIG. 6is displayed on the television screen (701). Next, a check is made tosee if the user has entered a navigation direction change (702). Theuser can specify a change of the navigation direction by controlling thecursor through the remote controller 402. If such setup-change isentered, the navigation direction will temporarily be changed (703). The“temporary change” means that changed parameters are temporarily stored.This is because, until the “Complete” button in FIG. 6 is pressed, thechange does not take effect. If no direction change is entered, controlskips step 703 and goes to step 704. Next, a check is made to see if alink depth limit (LV0) change has been entered (704). If such a changeis entered, the link level will be changed temporarily (705). If no suchchange is entered, control skips step 705 and goes to step 706. Anumeric value on the setup screen indicating the link depth limit may beentered by a ten-key pad (if available on the remote controller) orincreased or decreased through by arrow keys. Similarly, a check is madeto see if a time-out time (T.O.) change has been entered (706). If sucha change is entered, the time-out time will temporarily be changed(707). In addition, a check is made to see if a confirmation change hasbeen entered (708). If such a change is entered, the specified contentwill temporarily be changed (709). In addition, a check is made to seeif the “CANCEL” button 613 has been pressed (710). If pressed, all thetemporary changes are canceled (713) and processing ends. The “temporarychange cancellation” means that the changed parameters that aretemporarily stored will not be used as setup parameters. If the CANCELbutton is not pressed, a check is made to see if the COMPLETE button 611has been pressed. Upon the pressing of the button, all the temporarychanges are enabled (712). That is, the changed contents are storedpreferably in the non-volatile memory (flash memory 407 in FIG. 4) asnew setup parameters. If the “COMPLETE” button 611 was not pressed,control returns to step 702.

Next, FIG. 8 to FIG. 11 show the flowcharts of an example ofauto-navigation in this embodiment. Before describing these flowcharts,the tables used in the processing are described in FIGS. 12 and 13.

FIG. 12 shows an example of the structure of a history table 120 used inthis embodiment. This is a table used to store the history of pagessequentially traced through the links. This table allows control to gofrom a current page back to its parent page (link-source page). Thishistory table 120 is composed of three columns: a page 121, a in-pageposition 123, and a current position pointer 125 indicating the positioncurrently displayed. This history table 120 contains only one sequenceof the hierarchical tree shown in FIG. 1. For example, when controlmoves from page A to pages B and C sequentially through the links in theexample shown in FIG. 1, the three records for the pages aresequentially stored in the history table 120, as shown in FIG. 12(a).The current position pointer 125 indicates that the third page C is thepage currently displayed. Next, when control returns from the currentpage C to page B, the number of records is still three but the currentposition pointer 125 indicates the second record as shown in FIG. 12(b).Next, when control moves from page B to page D, a new sequence A→B→D isstored in the history table 120, as shown in FIG. 12(c), because controlgoes into another sequence different from the old tree sequence A→B→C.The current position pointer 125 indicates record 3. In the structure ofthe history table 120, the number of records stored in the history table120 corresponds to the link depth.

FIG. 13 shows an example of the structure of a read-page table 130 usedin this embodiment. The read-page table 130 is used to manage alink-destination-read count 135 in order to check if, for each position(link, that is, anchor point) 133 in a page 131 that was read (visited)at least once, its link-destination page was read. When control returnsfrom one page to another during auto-navigation, this read-page table130 is used to check if there remains links, the link-destinations ofwhich have not yet been visited.

Referring now to FIGS. 8 and 9, the CPU processing procedure forexecuting auto-navigation in this embodiment will be described. Asdescribed above, this processing is started by a user instruction afterthe line is connected.

First, the timer measuring the time to be compared with the time-outtime T.O. is started (801). The interval timer function of the CPU 401may be used as this timer. Next, a check is made to see which isspecified, depth-first search or width-first search (802). If thewidth-first search is selected, control goes to the steps in FIG. 9; ifthe depth-first search is selected, control goes to step 803 in FIG. 8.In step 803, the variable LV indicating the current depth level (linklevel) is reset to “0” (803). This variable LV corresponds to thecurrent position pointer 125 in the history table 120 shown in FIG. 12.

Next, the content (text) of the specified page is read, stored in theRAM (storage means) 408, analyzed for image drawing, and displayed onthe television screen (804). The “specified page” is a home page of theURL specified immediately after the Internet connection has been made.When control is passed from step 818 to step 804 which will be describedlater, the page and its position are specified based on the historytable 120.

Then, an unread link, that is, the anchor point (the first link if thereare many), of the page displayed in step 804 is identified. That is,part of the page including the position of the unread link is displayedon the screen. If the position is not in the range of the page displayedfirst, the image is scrolled or jumped until the position appears on thescreen.

Next, the above-described tables are updated (806). More specifically,for a new page, a new record is added to the history table 120 (FIG.12), and the page 131 and its position 133 are added to the read-pagetable 130 (FIG. 13). At this time, because control is not yet passed tothe link destination of the added link, “0” is set in the “count” 135.

Then, a check is made to see if the page display time has reached thetime interval Intvl0 specified by the user (807). To do so, anothertimer, not shown in the figure, is used to measure the time elapsed fromthe start of page display. Depending upon the page content,communication speed, or line status, a relatively long time may berequired until the entire page is displayed. The display operationcontinues until the time interval IntvlO expires.

If there is no unread link in the current page (No in 808), control goesto step 818 which will be described below. If there is one or moreunread links, the access information on the link destination of thefirst link (the link found in step 805) is specified (809). Because thiscauses control to go down one level, the link level variable LV isincremented (810). Then, the table is updated (811). More specifically,the “count” of the link of the link source in the read-page table 130 isincremented. In addition, unless the tree sequence changes, a new recordis added to the history table 120. If the tree sequence changes, onlythe new record is added instead of the record of the old tree.

A check is made to see if the auto-navigation time-out time has elapsed(812). If the time-out time has elapsed, auto-navigation ends (END). Ifthe time-out time has not yet elapsed, control goes to step 814. Notethat step 813 is required when the return processing shown in FIG. 16,which will be described below, is employed, in which case the flag FLGis set to “0” (813). This flag FLG is used during RETURN processing inFIG. 16.

Then, the content of the page specified in step 809 is read, as in step804, stored in the RAM 408, analyzed, and displayed (814). After thetime-interval Intvl0 (815), a check is made to see if the link (thefirst or headmost unread link selected in step 809) is the last link ofthe page (816). This is determined by referencing the read-page table130. If the link is not the last link, a check is made to see if thelink level LV updated in step 810 is smaller than the link depth limitLV0 specified by the user (817). If the link level is smaller than thelink depth limit specified by the user, control return to step 808,where a check is made to see if there is another unread link in the pagedisplayed in step 814 (808). If any, control goes to the lower levellink (809-816).

If, in step 817, it is determined that the link level has reached themaximum, the parent page of the current page is specified by referencingthe history table 120 (818). When the tracing of all pages in the linklevel range is finished and control is passed back to the page where theauto-navigation was started, there is no more parent page (No in step819) and processing ends (END). However, if control comes from thewidth-first search processing in FIG. 9 (No in 822), control returns tothe predetermined step in FIG. 9 as will be described later.

If there is a parent page in step 819, the link level LV is decrementedto pass control back to the parent page (820), an then control goes backto step 804 for starting the next branch tracing. When the returnprocessing in FIG. 16 is adopted, the flag FLG is set to “1” (821) afterstep 820.

The flowchart shown in FIG. 8 is applied to the example shown in FIG. 1.First, page A is displayed in step 804, and link 1 in page A is found instep 805. Then, in step 809, the link-destination page of link 1 in pageA, that is, page B, is specified, the link level LV is set to “1” instep 810, and the content of page B is displayed in step 814. At thisstage, because the link level LV is “1” which is lower than the maximumvalue LV0 “2”, control returns to step 809, the link destination (pageC) of the first unread link in page B (that is, link 1 in page B) isspecified, the link level LV is set to “2” in step 810, and the contentof page C is displayed in step 814. At this stage, because the linklevel LV has reached the limit of “2”, control goes to step 818, theparent page B of page C is specified, and the link level LV isdecremented by one to “1” in step 820.

Then, the parent page B is displayed in step 804, and the first unreadlink is identified in step 805. At this time, the first unread link inpage B is link 2. Therefore, page D which is the link destination oflink 2 is specified in step 809. The link level LV is incremented to “2”in step 810, and page D is displayed in step 814. At this time, becausethe link level LV has reached the limit of “2”, control goes to step 818and page B which is the parent page of page D is specified. The linklevel LV is reset to “1” in step 820, and page B is displayed in step804. Then, an attempt is made to select another unread link in page B.However, since there is no more unread link in page B. control goes fromstep 808 to step 818, where page A which is the parent page of page B isspecified, and the link level LV is reset to “0” in step 820.

Then, page A is displayed in step 804, and link 2 which is the firstunread link in page A is identified in step 805. Page E which is thelink destination of link 2 is displayed in step 809. After that, pagesF, E, G, E, and A are traced as with page B.

Control is passed from page E back to page A and then to page H (step814). Because it is found in step 808 that page H has no link, controlreturns to page A again via step 818. After that, it is found that pageA has no further unread link. Control is passed to step 818 via step 808and it is found that page A has no parent page. In step 819, controlgoes to step 822 and the auto-navigation processing for the depth-firstsearch ends (END).

Next, referring to FIG. 9, the width-first search processing will bedescribed. Comparing FIG. 2 with FIG. 3 indicates that the width-firstsearch auto-navigation contains some part of the depth-first search. Forexample, part 31 in FIG. 3 corresponds to the depth-first search withthe link depth limit LV0 of “1”, and part 32 corresponds to thedepth-first search with the link depth limit LV0 of “2”. Thus, theprocessing shown in FIG. 9 uses a part of the depth-first searchprocessing shown in FIG. 8.

In the flowchart in FIG. 9, the current link depth limit LV0 is saved inthe variable LV1 (901) and the link depth limit L0 is forced to be setto “1” (902). After that, control jumps to step 803 in FIG. 8. In theprocessing shown in FIG. 8, the depth-first search processing isperformed with the link depth limit of “1” according to the proceduredescribed above and, in step 882, control returns to step 904 in FIG. 9.In that step, the link depth limit LV0 is incremented (904). Unless thevalue of LV0 which is incremented does not exceed LV1 (No in 905), theread-page table is cleared (906) and the depth-first search processingis performed for the new LV0 (903). That is, the depth-first searchprocessing is performed with the link depth limit of “2”. In addition,LV0 is incremented (904) and, if LV0 exceeds LV1 (Yes in 905), then thevalue of LV1 is put into the variable LV0 (907) and the processing ends.In the example shown in FIG. 3, control goes to step 907 when LV0becomes “3”, the value of LV0 is returned to the original value of “2”,and then processing ends.

Sometimes, the user wants to get into the progress of auto-navigation.Such user operations include “suspend” which temporarily suspends theprogress of auto-navigation, “restart” which restarts the progresssuspended, “stop” which forces auto-navigation to stop, “skip” whichskips the display of the current page, and “return” which returnscontrol to the link-source page of the current page. These operationsare executed by an interrupt to the CPU, in response to a user'soperation on the remote controller 402 (special button for eachoperation, or button or menu operation on the screen).

FIG. 10 shows an example of flowchart of the “suspend” processing. Whenthe user requests to suspend, auto-navigation processing is temporarilysuspended (101) and, upon receiving a restart request from the user,processing is restarted (103).

FIG. 11 shows an example of a “skip” processing flow. When a skip isrequested from the user, the time interval INTVL0 that is specified issaved in the variable Intvl (111). Then, the time interval Intvl0 isforced to set to “0” (112). The processing shown in FIG. 11 is executedconcurrently with the auto-navigation processing in a time-dividingmanner. After it is confirmed that auto-navigation has proceeded to thenext page (Yes in 113), the time interval Intvl0 is returned to theoriginal value (114) to end the skip processing.

When a “return” request is made, control goes to step 818 in FIG. 8.When a “stop” request is made, control goes to END in FIG. 8.

In the above description, the history table 120 maintains only onesequence of the tree. Alternatively, the table may maintain a pluralityof pages, including revisit of the same page, in the order they aretraced.

FIG. 14 shows an example of the configuration of a history table 140.This table, designed for use in another type of “return” processingwhich will be described later, stores read pages 141 and positions 142in chronological order. The number of records 143 may be fixed. In sucha case, when the fixed-length area becomes full, older records areoverwritten by new records.

FIG. 15 shows a link-source table 150 which is used with the historytable 140. The link-source table 150 is used to contain the relationshipbetween a page 151 and its link-source (that is, parent) URL 152. Theconfiguration of the link-source URL 152 was described above. Forconvenience, a page 153 (file name) and a position 154 are shown here. Arecord 156 is added to the link-source table 150 each time the Webbrowser reads a new unread page (steps 806 and 811 in FIG. 8). Forexample, when control jumps from page A to page B for the first time inthe example shown in FIG. 1, the record 156 indicating that the linksource of page B is the position of link 1 in page A is recorded. Whenthe history table 140 (FIG. 14) in this example is used, it isrelatively easy to return to the page immediately preceding in time.However, when a page was read after a page other than the parent page(for example, control goes from page B to page D, returns to page B, andthen returns to page A), the history table 140 contains page Dimmediately before page B and therefore the URL of the parent page A isunknown. The link-source table 150 is designed for dealing with thissituation.

FIG. 16 is an example of a “return” processing flow corresponding to thehistory table 140 in FIG. 14 and the link-source table 150 in FIG. 15.In the return processing in the preceding example, control is passeddirectly to step 818 to return to the link-source page. However, it issometimes desired to return to the page position displayed immediatelybefore in time. The return processing shown in FIG. 16 is designed tomeet this need. As a typical example, assume that pages are traced inorder of A→B→C→B. When a return request is given at this time, controlreturns to page A that is the link source of page B in the precedingexample, while control returns to page C which was displayed immediatelybefore page B in this example.To do so, when the user makes a returnrequest while a page is displayed, the value of the above-described flagFLG is checked first (161). When the flag FLG is “0”, it indicates thatthe content of a page is being displayed in step 814 in FIG. 8 after thelink level LV was incremented in step 810. Thus, the link level LV isdecremented (162). On the other hand, when the flag FLG is “1”, itindicates that the content of a page is being displayed in step 804 inFIG. 8 after the link level LV was decremented in step 820. Thus, thelink level LV is incremented (163). After that, the history table 140 isreferenced so that the page immediately preceding in time sequence isspecified (164). Then, the last record is deleted from the history table140 (165). After that, control returns to step 813 in FIG. 8.

The user may select one of the above two types of return processing.

If, in a system with a cache, desired data once read from the WWW serveris to be read again and that data is still in the cache, the data may beread from the cache without having to access the WWW server, therebyreducing the time necessary to read the data.

As described above, the embodiment of the present invention allows evenusers unfamiliar with computers can enjoy net surfing.

Another embodiment of the present invention will now be described.

In the first embodiment, auto-navigation is executed while the userstays connected to the network, that is, in the on-line state. On theother hand, in this embodiment, the user connects to a network any timehe or she wants to automatically download specific information (forexample, newspaper data, television program information, weatherforecasting, product information, etc.,) onto the secondary storageunit, as shown in FIG. 17(a). After that, in the state disconnected fromthe network, that is in the off-line state, the user performsauto-navigation based on data stored on the secondary storage unit inthe same manner as described above. However, depending upon the link,the link-destination information is not stored on the secondary storageunit. To continue auto-navigation in such a state, the user must connectto the network. Because making a connection to the network involvestelephone charges (plus provider charges depending upon the situation),an inquiry dialog box 171, shown in FIG. 17(b), is opened to ask theuser whether to make a network connection. Whether or not a userconfirmation is necessary depends on the setting specified for“CONFIRMATION” 609 in FIG. 6.

FIG. 18 shows an example of a confirmation processing flow in thisembodiment. This processing is performed before each of steps 804 and814 in FIG. 8.

First, a check is made to see if the content of a specified page isstored in the information apparatus (181). If it is stored, control goesto the next step. If it is not, the confirmation is checked (182). If noconfirmation is necessary, the line is automatically connected (185). Ifconformation is necessary, the user is asked whether to connect to thenetwork as shown in FIG. 18(b) (183). When the user replies with YES(Yes in 184), the line is automatically connected (185); if not, thelink is ignored and control goes to the next step.

Automatic downloading may be performed by specifying control parameterssuch as an access site URL, download time (or date), retry count (numberof retries to be made at a connection failure time), limit in capacityof a page to be downloaded, and so on. The information apparatus has theclock function not shown in the figure. When the time arrives at whichdownload is to be made, the information apparatus automatically accessesthe URL of the access site to read the document of the site into thesecondary storage unit. When the line connection fails, the informationapparatus automatically retries the connection up to the maximum retrycount. After downloading, the line is disconnected automatically. Onlyone URL may be specified, or a plurality of URLs may be specified sothat they are accessed sequentially.

FIG. 19 shows a flowchart of an example of processing of thisembodiment.

When the clock function finds that the time has arrived (Yes in 191), anattempt is made to connect the line (192). When the line connectionfails (No in 193), the connection is retried up to the number of timesspecified by the retry count (194, 192). When the retry count isexceeded, the apparatus gives up the line connection and ends processing(END).

When the line is successfully connected (Yes in 193), the downloadprocessing DL is executed. First, access is made to the specified URLduring the download processing DL (195). At this time, when the pagecapacity exceeds the predetermined capacity limit (No in 196), controlgoes to step 198. When the capacity limit is not exceeded, the page isread into the secondary storage unit (197). If there is another objectto be accessed (Yes in 198), control returns to step 195; if not (No in198), the line is disconnected (199) and processing ends (END).

The auto-navigation function according to the present invention may beused in the automatic download processing DL. In that case, each time apage is read, it is stored in the secondary storage unit. The timeinterval 605, one of the parameters shown in FIG. 6, is disabled so thatafter reading entire data of the page, control goes to the next page.For a page once read, the same data is not stored in the secondary unitagain even if control is passed to that page. The confirmation 609function is also disabled.

This embodiment allows the user to access the network at a time when thetelephone charge is low, to download necessary information, and toperform auto-navigation based on the data. In addition, because displaydata is stored in the secondary storage unit, no communication time isrequired, reducing the display time for browsing.

As an example of application, the auto-navigation function according tothe present invention may be applied to an information guide or abulletin board whose content is changed automatically. That is, thecontent of a link location or a link destination is created in an HTMLdocument in a form suitable for an information guide and then theauto-navigation function is applied to this home page. This applicationmay be implemented in both the on-line and off-line modes.

The automatic Web tracing function according to the present inventionhas been described above. This function may be applied to the software,i.e., the browser in general, for personal computers or Personal DigitalAssistants (PDA).

Industrial Applicability

The present invention may be applied to a television set, its adapter,or a Web browser. According to the present invention, time-varyinginformation can passively be received as if it were televisioninformation, minimizing operation steps necessary for a user to performthe automatic Web browsing of the Internet. In addition, the off-linenavigation on information once stored in the apparatus saves thetelephone charges and reduces the time needed for displaying pages.

What is claimed is:
 1. An information apparatus with an automaticbrowsing function, said information apparatus comprising: access meansfor accessing documents on the Internet; storage means for storing dataof the accessed documents; and automatic Web tracing means forsequentially and automatically tracing link destinations according to apredetermined rule and parameters based on link information which isdefined in the documents stored in the storage means; wherein saidpredetermined rule is one of a depth-first search and a width-firstsearch and said parameters include at least a link depth limit to beused when the link destinations are sequentially traced downward and atime interval at which control moves from one document to another; andwherein said automatic Web tracing means include a history table inwhich a page access information history is stored each time controlmoves from a link source to ones of the link destinations and aread-page table in which information indicating, for each linkdestination of each link in a page, whether the link destination wasvisited or not, wherein said history table is referenced when controlreturns from one of the link destinations to the link source duringautomatic Web tracing and said read-page table is referenced to checkfor unread links.
 2. The information apparatus with the automatic Webbrowsing function according to claim 1, wherein said parameters furtherinclude an automatic Web tracing time-out time.
 3. The informationapparatus with the automatic Web browsing function according to claim 1,said information apparatus further comprising specifying means forallowing a user to specify said rule and parameters.
 4. The informationapparatus with the automatic Web browsing function according to any oneof claims 1-3, said information apparatus being connected to theInternet via a public line and further comprising non-volatile storagemeans for storing the documents obtained from the Internet, wherein saidautomatic Web tracing means perform automatic Web tracing for thedocuments stored in said non-volatile storage means when saidinformation apparatus is not connected to the Internet.
 5. Theinformation apparatus with the automatic Web browsing function accordingto claim 4, further comprising inquiry means for asking a user if aconnection is to be made automatically to the Internet when the documentat one of the link destinations is not stored in said non-volatilestorage means during automatic Web tracing.
 6. The information apparatuswith the automatic Web browsing function according to claim 4, furthercomprising automatic downloading means for storing the documents intosaid non-volatile storage means during automatic Web tracing by saidautomatic Web tracing means.
 7. A computer-readable recording mediumhaving stored therein a computer program which comprises the functionsof: accessing documents on the Internet; and sequentially andautomatically tracing link destinations automatically according to apredetermined rule and parameters based on link information defined inthe accessed documents; wherein said predetermined rule is one of adepth-first search and a width-first search and said parameters includeat least a link depth limit to be used when the link destinations aresequentially traced downward and a time interval at which control movesfrom one document to another; and wherein said function of sequentiallyand automatically tracing link destinations uses a history table inwhich a page access information history is stored each time controlmoves from a link source to ones of the link destinations and aread-page table in which information indicating, for each linkdestination of each link in a page, whether the link destination wasvisited or not, wherein said history table is referenced when controlreturns from one of the link destinations to the link source duringautomatic Web tracing and said read-page table is referenced to checkfor unread links.
 8. The recording medium according to claim 7, whereinsaid parameters further include an automatic Web tracing time-out time.9. The recording medium according to claim 7, said computer programfurther comprising the function of allowing a user to specify said ruleand parameters.
 10. The recording medium according to claim 7, saidinformation apparatus on which said computer program is executed beingconnected to the Internet via a public line and further comprisingnon-volatile storage means for storing the documents obtained from theInternet, wherein said computer program further comprises a function ofperforming automatic Web tracing for the documents stored in saidnon-volatile storage means when said information apparatus is notconnected to the Internet.
 11. The recording medium according to claim10, said computer program further comprising an inquiry function ofasking a user if a connection is to be made automatically to theInternet when the document at one of the link destinations is not storedin said non-volatile storage means during automatic Web tracing.
 12. Therecording medium according to claim 10, said computer program furthercomprising an automatic downloading function of storing the documentsinto said non-volatile storage means during automatic Web tracingthrough said automatic Web tracing means.